package com.gc.sql.test;

public final class IdentifierLong extends Object {
    private Name parent;
    
    private Dot dot;
    
    private Name child;
    
    public IdentifierLong(Name parent, Dot dot, Name child) {
        this.parent = parent;
        this.dot = dot;
        this.child = child;
    }
    private IdentifierLong() {
    }
    public static ParentBuilder builder() {
        IdentifierLong self = new IdentifierLong();
        return self.new ParentBuilder ();
    }
    public class ParentBuilder extends Object {
        private ParentBuilder () {}
        public DotBuilder parent(Name parent) {
            IdentifierLong.this.parent = parent;
            return IdentifierLong.this.new DotBuilder ();
        }
    
    }
    public class DotBuilder extends Object {
        private DotBuilder () {}
        public ChildBuilder dot() {
            IdentifierLong.this.dot = new Dot ();
            return IdentifierLong.this.new ChildBuilder ();
        }
    
    }
    public class ChildBuilder extends Object {
        private ChildBuilder () {}
        public IdentifierLong child(Name child) {
            IdentifierLong.this.child = child;
            return IdentifierLong.this;
        }
    
    }
        @Override
        public String toString() {
            return String.valueOf(parent)+" "+String.valueOf(dot)+" "+String.valueOf(child);
        }

}
